package com.ruoyi.produce.process.scheduling.service;

import com.ruoyi.produce.process.scheduling.domain.Scheduling;

import java.util.List;

public interface ISchedulingService {
    /**
     * 排产查询
     * @param scheduling
     * @return
     */
    public List<Scheduling> selectSchedulingList(Scheduling scheduling);

    /**
     * 通过id查询排产记录
     * @param shiftInfoId
     * @param machineId
     * @return
     */
    List<Scheduling> selectSchedulingById(String shiftInfoId, String machineId);

    /**
     * 通过加工单编号查询有无排产记录
     * @param shiftInfoId
     * @param workSheetId
     * @return
     */
    Scheduling searchSchedulingByWorkSheetId(String shiftInfoId, String workSheetId);

    /**
     * 通过加工单编号查询当前班次有无排产记录
     * 返回有排产的机器编号
     * @param workSheetId
     * @return
     */
    String searchSchedulingByWorkSheetId(String workSheetId);

    /**
     * 根据加工单编号查询排产记录
     * @param workSheetId
     * @return
     */
    List<Scheduling> selectSchedulingByWorkSheetId(String workSheetId);

    /**
     * 新增排产
     * @param scheduling
     * @return
     */
    public int insertScheduling(Scheduling scheduling);

    /**
     * 删除排产
     * @param scheduling
     * @return
     */
    public int deleteScheduling(Scheduling scheduling);

    /**
     * 改变排产记录的完成状态
     * @param scheduling
     * @return
     */
    int updateCompletedStatus(Scheduling scheduling);
}
